#define _CRT_SECURE_NO_WARNINGS 1
#include "SeqList.h"

//测试初始化
void SeqListInitTest()
{
	SL sl;
	SLInit(&sl);
	SLDestroy(&sl);
}
//尾插测试
SLPushBackTest()
{
	SL sl;
	SLInit(&sl);
	SLPushBack(&sl, 1);
	SLPrint(&sl);
	SLPushBack(&sl, 2);
	SLPrint(&sl);
	SLPushBack(&sl, 3);
	SLPrint(&sl);
	SLPushBack(&sl, 4);
	SLPrint(&sl);
	SLPushBack(&sl, 5);
	SLPrint(&sl);
	SLPushBack(&sl, 6);
	SLPrint(&sl);
	SLDestroy(&sl);
}
//尾删测试
void SLPopBackTest()
{
	SL sl;
	SLInit(&sl);
	SLPushBack(&sl, 1);
	SLPushBack(&sl, 2);
	SLPushBack(&sl, 3);
	SLPushBack(&sl, 4);
	SLPrint(&sl);
	SLPopBack(&sl);
	SLPrint(&sl);
	SLPopBack(&sl);
	SLPrint(&sl);
	SLDestroy(&sl);
}
//头插测试
void SLPushFrontTest()
{
	SL sl;
	SLInit(&sl);
	SLPushFront(&sl, 1);
	SLPushFront(&sl, 2);
	SLPushFront(&sl, 3);
	SLPushFront(&sl, 4);
	SLPushFront(&sl, 7);
	SLPrint(&sl);
	SLDestroy(&sl);
}
//头删测试
void SLPopFrontTest()
{
	SL sl;
	SLInit(&sl);
	SLPushFront(&sl, 1);
	SLPushFront(&sl, 2);
	SLPushFront(&sl, 3);
	SLPushFront(&sl, 4);
	SLPushFront(&sl, 7);
	SLPrint(&sl);
	SLPopFront(&sl);
	SLPrint(&sl);
	SLDestroy(&sl);
}
//指定位置插入测试
void SLInsertTest()
{
	SL sl;
	SLInit(&sl);
	SLPushFront(&sl, 1);
	SLPushFront(&sl, 2);
	SLPushFront(&sl, 3);
	SLPushFront(&sl, 4);
	SLPrint(&sl);
	SLInsert(&sl,3,21);
	SLPrint(&sl);
	SLDestroy(&sl);
}
void SLEraseTest()
{
	SL sl;
	SLInit(&sl);
	SLPushFront(&sl, 1);
	SLPushFront(&sl, 2);
	SLPushFront(&sl, 3);
	SLPushFront(&sl, 4);
	SLPrint(&sl);
	SLErase(&sl,0, 21);
	SLPrint(&sl);
	SLDestroy(&sl);
}
void SLFindTest()
{
	int index = 0;
	SL sl;
	SLInit(&sl);
	SLPushFront(&sl, 1);
	SLPushFront(&sl, 2);
	SLPushFront(&sl, 3);
	SLPushFront(&sl, 4);
	SLPrint(&sl);
	index = SLFind(&sl, 7);
	if (index >= 0)
		printf("找到了,下标是:%d\n", index);
	else
		printf("没找到!!!\n");
	SLDestroy(&sl);
}
int main()
{
	//SeqListInitTest();//初始化测试
	//SLPushBackTest();//尾插测试
	//SLPopBackTest();//尾删测试
	//SLPushFrontTest();//头插测试
	//SLPopFrontTest();//测试头删
	//SLInsertTest();//指定位置插入测试
	//SLEraseTest();//指定位置删除测试
	SLFindTest();//查找测试
	return 0;
}